package com.management.service;

import com.management.po.Commodity;
import com.management.vo.CommodityVO;

import java.util.List;

/**
 * @version v1.0
 * @Author: Slark
 * @Date: Created in2021/10/29  18:50
 * 商品表业务逻辑接口
 */
public interface CommodityService {
    /**
     * 查询所有商品列表对象
     * @return 商品列表对象
     */
    public List<CommodityVO> findAll();

    /**
     * 通过id查找单个商品对象
     * @return 商品对象
     *
     */
    public CommodityVO findById(int commodityId);

    /**
     * 增加商品
     * @param commodity
     * @return 是否添加成功
     */
    public boolean add(Commodity commodity);

    /**
     * 修改商品
     * @param commodity
     * @return 是否更新成功
     */
    public boolean update(Commodity commodity);

    /**
     * 根据公司编号查找到该公司的商品列表
     * @param companyId 公司编号
     * @return 商品列表对象
     */
    public List<CommodityVO> findByCompanyId(int companyId);

    /**
     * 根据商品类型编号查找到该商品类型的商品列表
     * @param commodityTypeId 商品类型编号
     * @return 商品列表对象
     */
    public List<CommodityVO> findByCommodityTypeId(int commodityTypeId);

    /**
     * 模糊查询
     * @param commodity
     * @return 对象集合
     */
    public List<CommodityVO> find(Commodity commodity);
}
